package two.dimensional.arrays;

/**
 * @author shkstart
 * @date 2022/4/16 - 22:09
 */
/*
 * 二维数组的使用：
 * 	规定：二维数组分为外层数组的元素，内层数组的元素
 * 		int[][] arr = new int[4][3];
 * 		外层元素：arr[0],arr[1]等
 * 		内层元素：arr[0][0],arr[1][2]等
 *
 *   ⑤ 数组元素的默认初始化值
 *   针对于初始化方式一：比如：int[][] arr = new int[4][3];
 *      外层元素的初始化值为：地址值
 *      内层元素的初始化值为：与一维数组初始化情况相同
 *
 *   针对于初始化方式二：比如：int[][] arr = new int[4][];
 *   	外层元素的初始化值为：null
 *      内层元素的初始化值为：不能调用，否则报错。
 *   */
public class ArrayTest02 {
    public static void main(String[] args) {
        int arr[][] = new int[5][6];
        System.out.println(arr[0]);//[I@1540e19d
        System.out.println(arr[2][3]);//0

        System.out.println(arr);//[[I@677327b6

        System.out.println("*****************");
        float arr1[][] = new float[5][6];
        System.out.println(arr1[0]);//地址值
        System.out.println(arr1[2][5]);//0.0

        System.out.println("*****************");
        String[][] arr2 = new String[5][4];
        System.out.println(arr2[0]);//地址值
        System.out.println(arr2[4][3]);//null
        System.out.println("*****************");
        double[][] arr3 = new double[5][];
        System.out.println(arr3[0]);//null
        System.out.println(arr3[1][2]);//报错


    }
}
